Remove the attach info after calling gtk_menu_do_remove(), since that
authorMatthias Clasen <maclas@gmx.de>
Thu, 22 Jan 2004 20:45:36 +0000 (20:45 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Thu, 22 Jan 2004 20:45:36 +0000 (20:45 +0000)
Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>

* gtk/gtkmenu.c (gtk_menu_remove): Remove the attach
info after calling gtk_menu_do_remove(), since that function
uses the attach info. Doh!

* gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns
for being 1 directly after setting it to 0.

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkmenu.c

index 0093bdcafb123f72b82840e34f70676324a75f09..dd7bf7ffeaa5915b7cb7fc2ee4f0a795b7e42650 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
+       info after calling gtk_menu_do_remove(), since that function
+       uses the attach info. Doh!
+
+       * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
+       for being 1 directly after setting it to 0.
+
 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
 
        * NEWS: Updates
index 0093bdcafb123f72b82840e34f70676324a75f09..dd7bf7ffeaa5915b7cb7fc2ee4f0a795b7e42650 100644 (file)
@@ -1,3 +1,12 @@
+Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
+       info after calling gtk_menu_do_remove(), since that function
+       uses the attach info. Doh!
+
+       * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
+       for being 1 directly after setting it to 0.
+
 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
 
        * NEWS: Updates
index 0093bdcafb123f72b82840e34f70676324a75f09..dd7bf7ffeaa5915b7cb7fc2ee4f0a795b7e42650 100644 (file)
@@ -1,3 +1,12 @@
+Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
+       info after calling gtk_menu_do_remove(), since that function
+       uses the attach info. Doh!
+
+       * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
+       for being 1 directly after setting it to 0.
+
 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
 
        * NEWS: Updates
index 0093bdcafb123f72b82840e34f70676324a75f09..dd7bf7ffeaa5915b7cb7fc2ee4f0a795b7e42650 100644 (file)
@@ -1,3 +1,12 @@
+Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
+       info after calling gtk_menu_do_remove(), since that function
+       uses the attach info. Doh!
+
+       * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
+       for being 1 directly after setting it to 0.
+
 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
 
        * NEWS: Updates
index 0093bdcafb123f72b82840e34f70676324a75f09..dd7bf7ffeaa5915b7cb7fc2ee4f0a795b7e42650 100644 (file)
@@ -1,3 +1,12 @@
+Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
+
+       * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
+       info after calling gtk_menu_do_remove(), since that function
+       uses the attach info. Doh!
+
+       * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
+       for being 1 directly after setting it to 0.
+
 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
 
        * NEWS: Updates
index 850b03d3304c7e17acf61a7ad6a43ba330adfe94..9e5049af592e8dc51fcdcb5da986f447a5f39b07 100644 (file)
@@ -941,10 +941,12 @@ gtk_menu_do_remove (GtkMenuShell *menu_shell,
   GList *children;
   GtkMenuPrivate *priv;
   gint delta;
+  gboolean single_column;
 
   ai = get_attach_info (G_OBJECT (child));
   priv = gtk_menu_get_private (GTK_MENU (menu_shell));
   delta = ai->bottom_attach - ai->top_attach;
+  single_column = priv->columns == 1;
 
   /* recalculate these, assuming the child has already been removed */
   priv->rows = 0;
@@ -955,7 +957,7 @@ gtk_menu_do_remove (GtkMenuShell *menu_shell,
       AttachInfo *child_ai = get_attach_info (children->data);
       
       /* Do not move items in table menus */
-      if (priv->columns == 1 && child_ai->bottom_attach > ai->bottom_attach)
+      if (single_column && child_ai->bottom_attach > ai->bottom_attach)
         gtk_container_child_set (GTK_CONTAINER (menu_shell), children->data,
                                  "top_attach", child_ai->top_attach - delta,
                                  "bottom_attach", child_ai->bottom_attach - delta,
@@ -987,10 +989,9 @@ gtk_menu_remove (GtkContainer *container,
       menu->old_active_menu_item = NULL;
     }
 
-  g_object_set_data (G_OBJECT (widget), ATTACH_INFO_KEY, NULL);
-
   GTK_CONTAINER_CLASS (parent_class)->remove (container, widget);
   gtk_menu_do_remove (GTK_MENU_SHELL (container), widget);
+  g_object_set_data (G_OBJECT (widget), ATTACH_INFO_KEY, NULL);
 }